package com.xyun.task.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.xyun.base.annotation.MyBatisDao;
import com.xyun.task.bean.WeixinCustomer;

/**
 * 微信网关相关
 * @author: 	xyun
 * @version: 	1.0 
 * @Copyright:  Copyright (c) 2016 
 * @createtime: 2016年1月19日 上午9:19:07
 */
@MyBatisDao
public interface TaskDao{
	
	/**
	 * 微信客户信息
	 */
	public WeixinCustomer getWxCustomer(@Param(value="weixinpk") String weixinpk,@Param(value="openid") String openid);
	/**
	 * 根据weixinpk 获取账号信息
	 */
	public Map<?, ?> getMpacc(@Param(value="weixinpk") String weixinpk);
	public List<?> getMpaccList();
	/**
	 * 全局指令列表
	 */
	public List<?> getGlobOrderList(@Param(value="weixinpk") String weixinpk);
	public Map<?,?> queryMenu(@Param("weixinpk")String weixinpk,@Param("menukey")String menukey);
	public boolean updateWxCustomer(WeixinCustomer wxCustomer);
	public boolean insertWxCustomer(WeixinCustomer wxCustomer);
	public Map<?,?> getWxEvent(@Param("weixinpk")String weixinpk,@Param("event")String event);
	public Map<?,?> getMaterial(@Param("materialNo")String materialNo);
	public List<?> getMaterialImgmsgList(@Param("materialNo")String materialNo);
	
	public List<WeixinCustomer> getWxCustomerList(WeixinCustomer wxCustomer);
	/**
	 * 统计每天的绑定 保有量
	 */
	public void bindReport();
	/**
	 * 获取前一天的绑定数据
	 */
	public List<?> getLastBindData();
	/**
	 * 记录赠送积分流水
	 * @author：	 xyun
	 */
	public boolean addScoreLog(@Param("certtype") String certType,@Param("certno") String certNo,
			@Param("custno")String custno,@Param("custno_crm") String custno_crm,
			@Param("mpid") String mpid,@Param("openid")  String openid,@Param("result")  String result,@Param("remark")String remark);
	
	public Map isNewBind(@Param("custno")String custno,@Param("custno_crm")String custno_crm);
	public Map isOldBind(@Param("certType")String certType,@Param("certNo")String certNo);
	public List<?>getScoreFail();
	public boolean updateScoreLog(@Param("certtype")String certType,@Param("certno") String certNo,
			@Param("mpid")String mpid,@Param("result")String result,
			@Param("remark")String remark);
}